Existing pairing based cryptographic systems use Weil or Tate pairings evaluated at points on an elliptic curve or abelian variety. For a fixed natural number m, the Weil pairing em is a bilinear map that takes as input two m-torsion points on an elliptic curve, and outputs an m th root of unity.